


//#include <iostream>
//#include <assert.h>
//using namespace std;
//
//class Stack
//{
//public:
//	void Init(int n = 4)
//	{
//		int* tmp = (int*)malloc(sizeof(int) * n);
//		if (tmp == nullptr)
//		{
//			perror("malloc fail");
//			return;
//		}
//
//		_array = tmp;
//		_capacity = n;
//		_top = 0;
//	}
//
//	void Push(int x)
//	{
//		if (_capacity == _top)
//		{
//			_capacity *= 2;
//			int* tmp = (int*)realloc(_array, _capacity * sizeof(int));
//			if (tmp == nullptr)
//			{
//				perror("malloc fail");
//				return;
//			}
//			_array = tmp;
//		}
//
//		_array[_top++] = x;
//	}
//
//	int Top()
//	{
//		assert(_top > 0);
//
//		return _array[_top - 1];
//	}
//
//	void Destroy()
//	{
//		free(_array);
//		_array = nullptr;
//		_capacity = _top = 0;
//	}
//
//private:
//	int* _array;
//	int _capacity;
//	int _top;
//};
//
//int main()
//{
//	Stack st;
//	st.Init();
//
//	st.Push(1);
//	st.Push(2);
//	st.Push(3);
//	st.Push(4);
//	cout << st.Top() << endl;
//
//	st.Push(5);
//	cout << st.Top() << endl;
//
//	st.Destroy();
//
//	return 0;
//}


//#include <iostream>
//using namespace std;
//
//class Date 
//{
//public:
//	void Init(int year, int month, int day)
//	{
//		this->_year = year;
//		this->_month = month;
//		this->_day = day;
//	}
//
//private:
//	int _year;
//	int _month;
//	int _day;
//};
//
//int main()
//{
//	Date d;
//    d.Init(2024, 7, 14);
//
//	return 0;
//}


//#include <iostream>
//using namespace std;
//
//typedef struct SListNodeC
//{
//	struct SListNode* next;
//	int val;
//} SL;
//
//struct SListNodeCPP
//{
//	void Init(int x)
//	{
//		next = nullptr;
//		val = x;
//	}
//
//	SListNodeCPP* next;
//	int val;
//};
//
//class SList
//{
//	SList* next;
//	int val;
//};
//
//int main()
//{
//	return 0;
//}


#include "Class.h"

//#include <iostream>
//using namespace std;
//
//class Stack
//{
//public:
//	void Init(int n = 4);
//
//private:
//	int* _array;
//	int _top;
//	int _capacity;
//};
//
//void Stack::Init(int n)
//{
//	int* tmp = (int*)malloc(sizeof(int) * n);
//	if (nullptr == tmp)
//	{
//		perror("malloc fail");
//		return;
//	}
//
//	_array = tmp;
//	_capacity = n;
//	_top = 0;
//}

int main()
{
	Stack st;
	st.Init(9);

	return 0;
}